//package org.lanqiao.service.impl;
//
//import com.alibaba.dubbo.config.annotation.Service;
//import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
//import com.weshare.cache.CacheKey;
//import org.lanqiao.login.ICategoryService;
//import org.lanqiao.mapper.CategoryMapper;
//import org.lanqiao.users.Category;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.data.redis.core.RedisTemplate;
//
//import java.util.ArrayList;
//import java.util.HashMap;
//import java.util.List;
//import java.util.Map;
//
//@Service
//public class CategoryServiceImpl implements ICategoryService {
//    @Autowired
//    private CategoryMapper categoryMapper;
//    //注入redisTemplate
//    @Autowired
//    private RedisTemplate redisTemplate;
//    @Override
//    public List<Map> findCategoryTree() {
//        //直接从redis中获取
//        return (List<Map>)redisTemplate.boundValueOps(CacheKey.CATEGORY_TREE).get();
//    }
//
//    @Override
//    public void saveCategoryRedis() {
//        //从数据据看中查询
//        List<Category> categories = categoryMapper.selectList(new QueryWrapper<Category>()
//                .eq("is_show","1")
//                .orderByAsc("seq"));
//        List<Map> category =findByParentId(categories,0);
//        redisTemplate.boundValueOps(CacheKey.CATEGORY_TREE).set(category);
//
//    }
//
//    public List<Map> findByParentId(List<Category> categoryList ,Integer parentId){
//        List<Map> mapList =  new ArrayList<>();
//        for (Category category:categoryList){
//            if (category.getParentId().equals(parentId)) {
//                Map map = new HashMap();
//                map.put("name", category.getName());
//                map.put("menus", findByParentId(categoryList, category.getId()));
//                mapList.add(map);
//            }
//        }
//        return  mapList;
//
//    }
//
//}
